<html>
<head><meta charset="utf-8"><title>rollup merge · general · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/index.html">general</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html">rollup merge</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="202855237"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202855237" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202855237">(Jul 04 2020 at 04:14)</a>:</h4>
<p>Why we do rollup merges insteead of direct merge into master once a PR is approved? Is it so that we  run a larger test suite less number of times? Also how are/which commits are selected for merge?</p>



<a name="202864516"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202864516" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Laurențiu <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202864516">(Jul 04 2020 at 08:55)</a>:</h4>
<p>To reduce CI time and costs, or so I think. There's a rollup queue at <a href="https://buildbot2.rust-lang.org/homu/queue/rust">https://buildbot2.rust-lang.org/homu/queue/rust</a> and someone (Centril, Manish?) goes through it each day, picks harmless-looking PRs and rolls them up. It seems like a full-time kind of job.</p>



<a name="202868475"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202868475" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202868475">(Jul 04 2020 at 10:56)</a>:</h4>
<p>Rust runs the tests after merging a branch with the main branch. If the tests pass, that merge is pushed to the main branch. It’s literally impossible to merge each commit separately. There are not enough hours in the day.</p>



<a name="202888628"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202888628" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202888628">(Jul 04 2020 at 19:46)</a>:</h4>
<p>Thank you :)</p>



<a name="202937284"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937284" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937284">(Jul 05 2020 at 20:37)</a>:</h4>
<p>I wonder why we didn't test each PR in parallel and then do a rollup afterwards. There are so many failed rollup because a PR is itself broken, rather than conflicts between them.</p>



<a name="202937395"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937395" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937395">(Jul 05 2020 at 20:40)</a>:</h4>
<p>we don't have ci budget to test each PR in parallel</p>



<a name="202937400"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937400" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937400">(Jul 05 2020 at 20:40)</a>:</h4>
<p>that would, for a rollup of say 10 PRs require 10 times as many builders</p>



<a name="202937409"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937409" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937409">(Jul 05 2020 at 20:40)</a>:</h4>
<p>we have ~60 today, so that would mean 600 -- that's just too many</p>



<a name="202937657"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937657" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937657">(Jul 05 2020 at 20:48)</a>:</h4>
<p>iiuc current CI will build Rust for all tier 1&amp;2 targets and test all tier 1 targets</p>



<a name="202937666"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937666" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937666">(Jul 05 2020 at 20:49)</a>:</h4>
<p>We could do, say, just build and test for x86_64-unknown-linux-gnu in parallel</p>



<a name="202937669"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202937669" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202937669">(Jul 05 2020 at 20:49)</a>:</h4>
<p>And PRs pass that will be eligible for rollup and full testing</p>



<a name="202938091"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938091" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938091">(Jul 05 2020 at 21:01)</a>:</h4>
<p>we basically already do? that's what the PR builders are for</p>



<a name="202938092"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938092" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938092">(Jul 05 2020 at 21:01)</a>:</h4>
<p>it's an open issue for bors to display that on the status page</p>



<a name="202938138"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938138" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938138">(Jul 05 2020 at 21:02)</a>:</h4>
<p>basically <a href="https://github.com/rust-lang/homu/issues/67">https://github.com/rust-lang/homu/issues/67</a> loosely</p>



<a name="202938435"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938435" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> DPC <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938435">(Jul 05 2020 at 21:11)</a>:</h4>
<p>there's also try that tries out the PR on certain targets but it's nowhere close to being foolproof</p>



<a name="202938492"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938492" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938492">(Jul 05 2020 at 21:12)</a>:</h4>
<p>oh that's basically useless for testing unless you edit files manually, it only builds for linux anyway</p>



<a name="202938518"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938518" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> DPC <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938518">(Jul 05 2020 at 21:13)</a>:</h4>
<p>yep</p>



<a name="202938852"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938852" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938852">(Jul 05 2020 at 21:23)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/122651-general/topic/rollup.20merge/near/202938091">said</a>:</p>
<blockquote>
<p>we basically already do? that's what the PR builders are for</p>
</blockquote>
<p>I thought the PR builder does less checks compared to the full testing done when merging</p>



<a name="202938898"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938898" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938898">(Jul 05 2020 at 21:24)</a>:</h4>
<p>I mean sort of? We test on more platforms and to some extent that means running more tests</p>



<a name="202938905"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938905" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938905">(Jul 05 2020 at 21:24)</a>:</h4>
<p>the PR builder also uses an older LLVM (from apt) so that ignores a dozen or so tests probably (codegen-related, mostly)</p>



<a name="202938908"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938908" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938908">(Jul 05 2020 at 21:24)</a>:</h4>
<p>but not in any significantly appreciable way I don't think</p>



<a name="202938973"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938973" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938973">(Jul 05 2020 at 21:26)</a>:</h4>
<p>I have the impression that it does less because a PR check build (~30min) is shorten than an approved PR build (~40min)</p>



<a name="202938977"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202938977" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202938977">(Jul 05 2020 at 21:27)</a>:</h4>
<p>I guess it's the codegen-related tests that you mentioned</p>



<a name="202939087"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202939087" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202939087">(Jul 05 2020 at 21:30)</a>:</h4>
<p>where are you seeing 40 minute builds?!</p>



<a name="202939092"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202939092" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202939092">(Jul 05 2020 at 21:31)</a>:</h4>
<p>our bors CI time is like ~4 hours today, after GHA should be around 2.5 iirc</p>



<a name="202939103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202939103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202939103">(Jul 05 2020 at 21:31)</a>:</h4>
<p>PR builders are around 1.5 hours last I looked, but that was a while back</p>



<a name="202939414"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202939414" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> DPC <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202939414">(Jul 05 2020 at 21:40)</a>:</h4>
<p>probably they are looking at CI instead of the merge (bors CI_ time</p>



<a name="202941462"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202941462" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Gary Guo <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202941462">(Jul 05 2020 at 22:43)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/122651-general/topic/rollup.20merge/near/202939087">said</a>:</p>
<blockquote>
<p>where are you seeing 40 minute builds?!</p>
</blockquote>
<p>I am talking about the "build" step in individual checks.</p>



<a name="202941870"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202941870" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202941870">(Jul 05 2020 at 22:57)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/122651-general/topic/rollup.20merge/near/202939092">said</a>:</p>
<blockquote>
<p>our bors CI time is like ~4 hours today, after GHA should be around 2.5 iirc</p>
</blockquote>
<p>What's GHA?</p>



<a name="202941980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202941980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202941980">(Jul 05 2020 at 23:00)</a>:</h4>
<p>GitHub Actions</p>



<a name="202945656"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/rollup%20merge/near/202945656" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/rollup.20merge.html#202945656">(Jul 06 2020 at 00:59)</a>:</h4>
<p>thanks</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>